home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / sound / zutil_f2.zip / ZUTIL_E.MAN < prev    next >
Text File  |  1993-02-08  |  12KB  |  316 lines

  1. Short explanation of ZUtil's features and how to use 'em
  2. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  3.  
  4. 1. License
  5. ~~~~~~~~~~
  6.  
  7. ZUtil is Freeware, this means, anybody can use it at no charge.
  8. Patching the code is allowed only for private use.
  9. Distributing ZUtil in other forms than it is bundled by me is
  10. not allowed. The archive, named ZUTIL_F2.* should contain :
  11. It is not allowed to let anybody pay for ZUtil more than
  12. the price for the disk that contains it.
  13.  
  14. ZUTIL.EXE (the program itself)
  15. ZUTIL.MAN (german documentation)
  16. ZUTIL_E.MAN (this file)
  17. ABR1.BAT (a sample automatic answering machine with modem/fax detection)
  18. FOSSY.COM (a program to terminate FrontDoor with an errorlevel when a
  19.            RING comes in)
  20. FOSSY.ASM (Assembler Source of FOSSY.COM)
  21.  
  22.  
  23. 2. Requirements to run ZUtil.Exe
  24. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  25.  
  26. An IBM PC or compatible (a system with 286 or faster may be the minimum to
  27.                          record and play voice files)
  28. A Hard Disk drive. In some cases maybe it will work to play voice files
  29.                    from floppy disks, but I didn't test this out.
  30. A Fossil Driver (e.g. BNU or X00), not locked at speeds below 38400 bps
  31. A ZyXEL U1496 series modem with Firmware version 5.00 or newer
  32.  
  33.  
  34. 3. Main Functions & general errorlevels returned by ZUtil
  35. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  36.  
  37. A short overview over ZUtil's functions can be printed on the screen
  38. by calling the program ZUtil.Exe without any command line parameters.
  39.  
  40. To execute any of the following functions, the syntax is
  41.  
  42. ZUTIL <function name> [options] [filename] [strings]
  43.  
  44. <function name> has to be the first argument. It could be
  45. abbreviated by using only the first letter ('P' for 'PLAY' etc.)
  46. [options] must begin with '-' or '/'.
  47. The first string without a leading '-' or '/' is recognized as
  48. the filename when using RECORD or PLAY.
  49. [strings] and [options] may be mixed.
  50. In [strings], the pipe character may be used as a replacement
  51. for <cr> (ASCII 13). Used in a string that should be awaited from
  52. the modem, it is used as a replacement for <cr> and for <lf> (ASCII 10).
  53.  
  54. BTW: You can stop almost every action by pressing <esc> or <ctrl-c>
  55. on your keyboard. Press 'q' to force 'Quiet detected' immediately,
  56. 's' to force 'Silence detected', 'c' to make ZUtil think it has
  57. detected a Fax calling tone, or '0'...'9','*','#' to simulate the
  58. reception of the corresponding DTMF codes.
  59.  
  60. All the functions return errorlevels as follows:
  61. 255 - (PLAY or RECORD) couldn't open the specified file, or it doesn't
  62.       contain PLAYable ZyXEL voice data.
  63. 254 - general serial I/O fault. In most cases, this means there is
  64.       no Fossil driver available at the moment.
  65. 253 - didn't get any answer from the modem (e.g. an OK after some command)
  66. 252 - (RECORD) could not write to file. (e.g. 'cause the disk is full)
  67. 251 - (PLAY or RECORD) Fax-Calling Tone detected. You can disable this
  68.       by using the /I command line option.
  69. 250 - action stopped by operator. The operator (you!) pressed <esc> or
  70.       <ctrl-c>. In bad cases, the modem may be in an undefined state after
  71.       this. You should issue an SEND 'ATZ|' or HANGUP after this.
  72. 249 - (RECORD) Silence detected. This means, the caller was quiet during
  73.       from the beginning of the recording for <TimeOut> 1/10 seconds (see below)
  74. 248 - (RECORD) Quiet detected. This means, the caller said something
  75.       at the beginning of the recording and then became quiet. He kept
  76.       quiet for <TimeOut> 1/10 seconds.
  77.       The <TimeOut> and the sensitivity level for silence detection could
  78.       be configured by using SEND "AT+VSD=<Level>,<TimeOut>|".
  79.       <Level>=0 means Silence Detection is disabled, <Level>=31 is the
  80.       possible maximum. What <Level> you have to use, differs from
  81.       country to country and from ZyXEL to ZyXEL. It's even different
  82.       when using different Sample Modes.
  83.       Sample: ZUTIL SEND "AT+VSD=20,30|" "OK"
  84.  
  85.  
  86. 3.1 AWAIT
  87. ~~~~~~~~~
  88. Waits for a string from the modem. You can specify up to three strings
  89. which should be recognized.
  90. This functions returns 0, if none of the specified strings is recognized
  91. within the time specified by the option /T.
  92. Otherwise the count of the string is returned (1 if the first string matched,
  93. 2 if the second matched, 3 if the third one matched)
  94.  
  95. Sample : ZUTIL AWAIT /P1 "RING" /T30
  96. Waits for the string "RING" from the modem in COM2, max. 30 seconds
  97.  
  98. Note : This function clears the 'received characters' buffer at startup,
  99.        so its use is somewhat limited. Characters may be lost.
  100.  
  101.  
  102. 3.2 SEND
  103. ~~~~~~~~
  104. Sends a string to the modem, then waits for strings from the modem.
  105. Here, you can specify up to ten strings which should be recognized.
  106. Returns errorlevel as function AWAIT.
  107.  
  108. Sample : ZUTIL SEND "ATA|" "CONNECT|" "CONNECT 1200" "CONNECT 2400" "CONNECT FAX" "NO CARRIER" /T60
  109. Sends the hayes command ATA to the modem in COM1, and waits for CONNECT message
  110. or NO CARRIER message from the modem within 60 seconds.
  111.  
  112. Sample batch file errorlevel operation after the above sample function call :
  113.  
  114. IF ERRORLEVEL 6 GOTO Error
  115. IF ERRORLEVEL 5 GOTO No_Connect
  116. IF ERRORLEVEL 4 GOTO Receive_Fax
  117. IF ERRORLEVEL 3 GOTO BBS_call_at_2400
  118. IF ERRORLEVEL 2 GOTO BBS_call_at_1200
  119. IF ERRORLEVEL 1 GOTO BBS_call_at_300
  120. GOTO Error
  121. [...]
  122.  
  123.  
  124. 3.3 WATCH
  125. ~~~~~~~~~
  126. Like AWAIT, but waits for a configurable count of 'RING|'s from the modem.
  127. You could specify the max time using the /T parameter.
  128. The count of RINGs to wait for is given by the /R parameter.
  129. If at least one RING is received and the caller hung up (10 sec no RING)
  130. after that, this function is also terminated. You could check the
  131. number of incoming RINGs by testing the errorlevel.
  132.  
  133. Sample: ZUTIL WATCH /R3 /T3600
  134. Waits 1 hour for telephone ringing. If someone dials in, but hangs up
  135. after 1 or two rings, the returned errorlevel is 1 resp. 2.
  136. Otherwise it returns 3 (three RINGs received) or 0 (no call).
  137. You could use this to implement a feature like
  138. 'one RING, pause, one RING' -> Mailbox call
  139. 'three RING's -> Voice call
  140.  
  141.  
  142. 3.4 HANGUP
  143. ~~~~~~~~~~
  144. This normally just does, what the name says... it will
  145. terminate an existing connection or voice call by simply
  146. making the ZyXEL go On-Hook.
  147.  
  148.  
  149. 3.5 PLAY
  150. ~~~~~~~~
  151. Plays a recorded ZyXEL voice file from disk. The errorlevel
  152. generation after PLAY or RECORD is quite difficult to understand:
  153. In addition to the errorlevels described at the beginning of
  154. this section, you could specify if DTMF tone codes should be
  155. recognized.
  156. If you specify /M1, the playback of the voice file is stopped
  157. if the caller sends a DTMF signal. The program then returns
  158. 10-19 for DTMF codes '0'-'9',
  159. 20 for DTMF code '#', 21 for DTMF code '*'.
  160. If you specify /M2 or greater, the program will return
  161. 10 + 12 * <first digit> + <second digit>, where
  162. <digit> = 0...9 for DTMF codes '0' to '9',
  163. <digit> = 10 for DTMF code '#' and <digit> = 11 for DTMF code '*'.
  164. Anyway, all received codes are printed in the last line of the
  165. program screen output, so you could read this line with an utility
  166. program like AWK and allow action control by DTMF sequences > 2 digits
  167. in your batch files. 'Quiet', 'Silence' and 'Fax CNG' are listed
  168. also in the last line by the characters 'q', 's', 'c'.
  169.  
  170. Sample: ZUTIL PLAY D:\VOICE\HELLO.ZYX /P1 /M0 /I
  171. This will play the file HELLO.ZYX on a ZyXEL in COM2, with
  172. detection of Fax calling tone and DTMF tones fully disabled.
  173.  
  174.  
  175. 3.6 RECORD
  176. ~~~~~~~~~~
  177. Record voice to a ZyXEL voice file (disk).
  178. If one or more DTMF tone(s) is/are detected, the errorlevel is
  179. generated as described above (3.5).
  180. There are two or three modes available to record files :
  181. /S1 - CELP : this mode is only availabe on the ZyXEL plus models.
  182.              It allows good quality recording at a data rate of
  183.              1200 cps, so one minute of voice would take 70k on your disk.
  184. /S2 - 2-bit ADPCM : available on all ZyXEL models, data rate is
  185.              2400 cps. Quality is poor, so use this only on slow
  186.              computers or systems with no ZyXEL plus und less disk spac